#include <stdio.h>
#include <stdlib.h>
#define SIZE 10

typedef struct
{
	int e[SIZE];
	int length;
}Sqlist;

void Init(Sqlist*);
int IsOut(Sqlist *L);
int GetElement(Sqlist *L,int index);
int DeleteElement(Sqlist *L,int index);
int AddElement(Sqlist *L,int index,int value);

int GetLength(Sqlist*);
int main()
{	
	Sqlist L;
	Init(&L);
	AddElement(&L,1,2);
	AddElement(&L,2,2);
	AddElement(&L,3,2);
	AddElement(&L,4,2);
	AddElement(&L,5,2);
	AddElement(&L,6,2);
	AddElement(&L,7,2);
	AddElement(&L,8,2);
	AddElement(&L,9,2);
	AddElement(&L,10,2);
}

void Init(Sqlist *L)
{
	
	for(int i=0;i<SIZE;i++)
		L->e[i]=0;
	L->length=0;
}
int GetLength(Sqlist *L)
{
	return	L->length;
}
int GetElement(Sqlist *L,int index)
{
	return L->e[index-1];
}
int DeleteElement(Sqlist *L,int index)
{
	for(int i=index-1;i<SIZE-1;i++)
		L->e[i]=L->e[i+1];
	L->e[SIZE-1]=0;
	L->length-=1;
}
int AddElement(Sqlist *L,int index,int value)
{
	if(IsOut(L))
	{
		(L->length)=(L->length)+1;
		for(int i=index-1;i<SIZE-1;i++)
			L->e[i+1]=L->e[i];
		L->e[index-1]=value;
	}
}
int IsOut(Sqlist *L)
{
	if(L->length>=SIZE)
		return 0;
	return 1;
}

